草庐IT

security - Websockets、socket.io、nodejs 和安全性

全部标签

javascript - 简单的振荡器,但在 IOS 上使用网络音频 API 没有声音

这是一个super简单的例子,我试图在chrome的iphone上运行。像这样的其他网络音频API示例http://alxgbsn.co.uk/wavepad/工作,但不是我的:(varaudioContext,oscaudioContext=new(window.AudioContext||window.webkitAudioContext);osc=audioContext.createOscillator()osc.connect(audioContext.destination)if(osc.noteOn)osc.start=osc.noteOnosc.start(0)osc.

javascript - 将 'arguments' 传递给 'apply()' 是否安全

假设我有以下代码(完全没用,我知道)functionadd(a,b,c,d){alert(a+b+c+d);}functionproxy(){add.apply(window,arguments);}proxy(1,2,3,4);基本上,我们知道apply需要一个数组作为第二个参数,但我们也知道arguments不是一个正确的数组。代码按预期工作,所以可以肯定地说我可以将任何类似数组的对象作为apply()中的第二个参数传递吗?以下内容也可以使用(至少在Chrome中):functionproxy(){add.apply(window,{0:arguments[0],1:argumen

javascript - 依赖 Content-Type : text/plain to mitigate malicious javascript execution in response? 是否安全

我们有一个返回的web应用程序HTTP/1.1400BadRequest...Content-Type:text/plain;charset=UTF-8Content-Length:57Date:Tue,14Apr201519:24:54GMTConnection:closeInvalidprojectareaitemidalert(1086)据我了解,依靠Content-Type:text/plain;charset=UTF-8作为防御来阻止javascript执行是不够的。相反,应该对输出进行编码,并且应该对输入进行输入验证并丢弃垃圾。我正在寻找的是关于处理具有javascript

javascript - 如何在 ionic 3 中将视频文件从 ios 转换为 base64

我正在尝试转换我们可以从iOS设备检索的视频url,并将其转换为ionic3中的BASE64,但我无法实现BASE64url​​。iOS视频URL:filePath=/var/mobile/Containers/Data/Application/3436A7EB-4684-4618-8125-3E6AE1645FCE/Documents/MUS_RA/1534429730643_capturedvideo.MOV我尝试了以下代码,通过使用BASE64cordova插件将视频URL转换为BASE64,但没有成功this.base64.encodeFile(filePath).then((

javascript - AJAX 跨域安全背后的基本原理是什么?

考虑到编写跨域获取数据的服务器端代理的简单性,我不知道阻止客户端AJAX跨域调用的最初意图是什么。我不是在寻求猜测,我是在寻找语言设计者(或与他们关系密切的人)的文档,了解他们认为自己在做什么,而不仅仅是给开发人员带来轻微的不便。TIA 最佳答案 防止浏览器充当反向代理。假设您正在浏览http://www.evil.com从您办公室的PC上,并假设该办公室中存在一个包含敏感信息的内部网http://intranet.company.com只能从本地网络访问。如果跨域策略不存在,www.evil.com可以向http://intran

javascript - Web Workers 是一种安全的方式来沙盒不受信任的 JavaScript 代码吗

我想知道WebWorker是否是对不受信任的JavaScript代码进行沙盒处理的安全方法。例如,在绘图应用程序的上下文中,开发人员可以在其中实现新的绘图工具,您可以将他们的代码放入webworker中,并且每当用户单击Canvas时,向他们发送包含光标位置的JSON消息,以及图像数据数组,当脚本完成时,它会传回一条包含新图像数据的消息。这是否安全,或者是否存在我没​​有想到的风险? 最佳答案 DOM对Webworker不可用,但可以访问同源内容,例如indexedDB。请参阅我的相关问题:Canworkersbesecureeno

javascript - Microsoft Edge 不接受内容安全策略的哈希

问题Content-Security-Policy应该默认将脚本和样式解析列入黑名单,并允许它基于各种指令来验证预期输出的哈希值。浏览器必须无法实现任何未预先提供匹配哈希的Javascript或CSS。具有匹配散列的代码应正常执行。MicrosoftEdge拒绝所有JS/CSS页内block。说明在MicrosoftEdge和任何其他浏览器中访问下面的实时演示链接。现场演示:http://output.jsbin.com/biqidoqebu演示原始源码#loading{color:transparent}#loading:after{color:green;content:"Styl

javascript - Nodejs EventEmitter - 定义监听器功能的范围

我想要这样的作品:varEvents=require('events'),test=newEvents.EventEmitter,scope={prop:true};test.on('event',function(){console.log(this.prop===true);//wouldlogtrue});test.emit.call(scope,'event');但是,不幸的是,监听器甚至没有被调用。有没有办法用EventEmitter做到这一点?我可以Function.bind到监听器,但是,我真的希望EventEmitter有一些特殊的(或明显的;)方法来做到这一点...感

javascript - 用于混合应用程序的 Aurelia.io

我想问一下AureliaJS框架是否可以在混合应用程序开发中用作Ionic的替代品。我已经看到了一些尝试,如何与Cordova集成,但是从他们的页面上并不清楚应该如何完成。 最佳答案 您可以像在常规浏览器中一样在Cordova上使用Aurelia。这基本上就是您的链接文章试图讲述的内容。开始使用Aurelia并将其托管在Cordova中。但这并不能解决您可能期望的Ionic替代品的问题。基本上,您必须自己构建这个抽象层或使用适合您需要的另一个UI框架。@EisenbergEffect在评论中谈到名为AureliaInterface的

javascript - 如何将文本输入字段值设置为常量并将该值记录在 Cypress.io 中

如何将文本输入字段值获取到Cypress中的“const”变量,以便我可以使用cy.log()记录该变量。以下代码没有记录任何内容,熟悉Cypress.io的人可以指教cy.get('input[name="email"]').then(($text)=>{consttxt=$text.text()cy.log(txt)}) 最佳答案 使用invoke('val')而不是invoke('text')对我的情况有效。html标签的提示Cypress代码cy.get('input[name="email"]').invoke('val'